<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.7"/>
<title>Catharsis.NET.Repository: Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Catharsis.NET.Repository
   &#160;<span id="projectnumber">1.6.5</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.7 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Properties</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p> 
 <a href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#details">More...</a></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
 <div class="center">
  <img src="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.png" usemap="#Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;_map" alt=""/>
  <map id="Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;_map" name="Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;_map">
<area href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html" alt="Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;" shape="rect" coords="162,112,476,136"/>
<area href="interface_catharsis_1_1_repository_1_1_i_repository_3_01_e_n_t_i_t_y_01_4.html" alt="Catharsis.Repository.IRepository&lt; ENTITY &gt;" shape="rect" coords="162,56,476,80"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9203aa99de2433032df5e63c5bd74f83"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a9203aa99de2433032df5e63c5bd74f83">LinqToSqlRepository</a> (string connectionString)</td></tr>
<tr class="separator:a9203aa99de2433032df5e63c5bd74f83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac135f994c78d476168d2551dd69371bf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#ac135f994c78d476168d2551dd69371bf">LinqToSqlRepository</a> (IDbConnection connection)</td></tr>
<tr class="separator:ac135f994c78d476168d2551dd69371bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa93dff7ad91ffe8fa9f9f83311c4532d"><td class="memItemLeft" align="right" valign="top">override IRepository&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#aa93dff7ad91ffe8fa9f9f83311c4532d">Commit</a> ()</td></tr>
<tr class="separator:aa93dff7ad91ffe8fa9f9f83311c4532d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b9c682bc28a6fabb266c5668dc116ed"><td class="memItemLeft" align="right" valign="top">override IRepository&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a8b9c682bc28a6fabb266c5668dc116ed">Delete</a> (ENTITY entity)</td></tr>
<tr class="separator:a8b9c682bc28a6fabb266c5668dc116ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71a99476eeef5d1d3f07bd911a6a3214"><td class="memItemLeft" align="right" valign="top">override IRepository&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a71a99476eeef5d1d3f07bd911a6a3214">DeleteAll</a> ()</td></tr>
<tr class="separator:a71a99476eeef5d1d3f07bd911a6a3214"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68ae11cbe04e2a53e4bb6f4b5ee23a34"><td class="memItemLeft" align="right" valign="top">override IEnumerator&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a68ae11cbe04e2a53e4bb6f4b5ee23a34">GetEnumerator</a> ()</td></tr>
<tr class="separator:a68ae11cbe04e2a53e4bb6f4b5ee23a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84f48ca9aa9dd46b3b5c8f923bcc4dd6"><td class="memItemLeft" align="right" valign="top">override IRepository&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a84f48ca9aa9dd46b3b5c8f923bcc4dd6">Persist</a> (ENTITY entity)</td></tr>
<tr class="separator:a84f48ca9aa9dd46b3b5c8f923bcc4dd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a309e9335a9406292f3ae53dee54cdc10"><td class="memItemLeft" align="right" valign="top">override IRepository&lt; ENTITY &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a309e9335a9406292f3ae53dee54cdc10">Refresh</a> (ENTITY entity)</td></tr>
<tr class="separator:a309e9335a9406292f3ae53dee54cdc10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a039e9244bb54465233718d69eb797cb7"><td class="memItemLeft" align="right" valign="top">override <a class="el" href="interface_catharsis_1_1_repository_1_1_i_transaction.html">ITransaction</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a039e9244bb54465233718d69eb797cb7">Transaction</a> (IsolationLevel?isolation=null)</td></tr>
<tr class="separator:a039e9244bb54465233718d69eb797cb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a></td></tr>
<tr class="memitem:af74d1d48bbb8630b15d4a4e314afe5d1 inherit pub_methods_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af74d1d48bbb8630b15d4a4e314afe5d1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>Dispose</b> ()</td></tr>
<tr class="separator:af74d1d48bbb8630b15d4a4e314afe5d1 inherit pub_methods_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a6d7b8ed9af213ff4d4e880c8bfa03ee2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d7b8ed9af213ff4d4e880c8bfa03ee2"></a>
override void&#160;</td><td class="memItemRight" valign="bottom"><b>OnDisposing</b> ()</td></tr>
<tr class="separator:a6d7b8ed9af213ff4d4e880c8bfa03ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:acf149200e9f60b6f5bd4ec97f5354bcf"><td class="memItemLeft" align="right" valign="top">DataContext&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#acf149200e9f60b6f5bd4ec97f5354bcf">DataContext</a><code> [get]</code></td></tr>
<tr class="separator:acf149200e9f60b6f5bd4ec97f5354bcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae31674813b52a562e6152d4d380fbc88"><td class="memItemLeft" align="right" valign="top">override Type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#ae31674813b52a562e6152d4d380fbc88">ElementType</a><code> [get]</code></td></tr>
<tr class="separator:ae31674813b52a562e6152d4d380fbc88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a491c9a503d1461e062de945645fb7a4e"><td class="memItemLeft" align="right" valign="top">override Expression&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a491c9a503d1461e062de945645fb7a4e">Expression</a><code> [get]</code></td></tr>
<tr class="separator:a491c9a503d1461e062de945645fb7a4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a643204cebdeb6e7bf0d4a675863975b9"><td class="memItemLeft" align="right" valign="top">override IQueryProvider&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a643204cebdeb6e7bf0d4a675863975b9">Provider</a><code> [get]</code></td></tr>
<tr class="separator:a643204cebdeb6e7bf0d4a675863975b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td colspan="2" onclick="javascript:toggleInherit('properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a></td></tr>
<tr class="memitem:a335f6b7de8a6c26070a4a65b41094264 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a335f6b7de8a6c26070a4a65b41094264"></a>
abstract Type&#160;</td><td class="memItemRight" valign="bottom"><b>ElementType</b><code> [get]</code></td></tr>
<tr class="separator:a335f6b7de8a6c26070a4a65b41094264 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78c503b4ee6083f60437d87da7bc1690 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78c503b4ee6083f60437d87da7bc1690"></a>
abstract Expression&#160;</td><td class="memItemRight" valign="bottom"><b>Expression</b><code> [get]</code></td></tr>
<tr class="separator:a78c503b4ee6083f60437d87da7bc1690 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7148a9019241a98d16ae6ef41f4073d1 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7148a9019241a98d16ae6ef41f4073d1"></a>
abstract IQueryProvider&#160;</td><td class="memItemRight" valign="bottom"><b>Provider</b><code> [get]</code></td></tr>
<tr class="separator:a7148a9019241a98d16ae6ef41f4073d1 inherit properties_class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Data repository which is based on LinqToSQL (System.Data.Linq) persistence provider.</p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
  <table class="tparams">
    <tr><td class="paramname">ENTITY</td><td>Type of mapped business entities.</td></tr>
  </table>
  </dd>
</dl>
<p>This repository implementation is not thread-safe.</p>
<div class="typeconstraint">
<dl><dt><b>Type Constraints</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em>ENTITY</em></td><td>&#160;:</td><td valign="top"><em>class</em></td><td>&#160;</td></tr>
</table>
</dl>
</div>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9203aa99de2433032df5e63c5bd74f83"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.LinqToSqlRepository </td>
          <td>(</td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>connectionString</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates new instance of LinqToSQL ORM repository that works with mapped entities of <em>ENTITY</em>  type.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">connectionString</td><td>Connection string, used for creating IDbConnection object internally.</td></tr>
  </table>
  </dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">ArgumentNullException</td><td>If <em>connectionString</em>  is a <code>null</code> reference.</td></tr>
    <tr><td class="paramname">ArgumentException</td><td>If <em>connectionString</em>  is string.Empty string.</td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac135f994c78d476168d2551dd69371bf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.LinqToSqlRepository </td>
          <td>(</td>
          <td class="paramtype">IDbConnection&#160;</td>
          <td class="paramname"><em>connection</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Creates new instance of LinqToSQL ORM repository that works with mapped entities of <em>ENTITY</em>  type.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">connection</td><td>Shared database connection object, internaly used for performing of SQL queries. Connection must be in open state. Proper closing and life cycle management of this connection is up to external calling code.</td></tr>
  </table>
  </dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">ArgumentNullException</td><td>If <em>connection</em>  is a <code>null</code> reference.</td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aa93dff7ad91ffe8fa9f9f83311c4532d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IRepository&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Commit </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Saves all non-persisted changes to the underlying data storage facility by persisting modified entities and deleting those which have been marked as deleted.</p>
<dl class="section return"><dt>Returns</dt><dd>Back reference to the current repository.</dd></dl>
<dl class="section see"><dt>See also</dt><dd>System.Data.Linq.DataContext.SubmitChanges()</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#a600c8a2b24d359ba3ace3fbecee838a3">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a8b9c682bc28a6fabb266c5668dc116ed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IRepository&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Delete </td>
          <td>(</td>
          <td class="paramtype">ENTITY&#160;</td>
          <td class="paramname"><em>entity</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Marks specified business entity as deleted. Actual deletion is performed when either <a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#aa93dff7ad91ffe8fa9f9f83311c4532d">Commit()</a> method is called or this call is made inside a transaction.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">entity</td><td>Business entity to be deleted.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Back reference to the current repository.</dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">ArgumentNullException</td><td>If <em>entity</em>  is a <code>null</code> reference.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a71a99476eeef5d1d3f07bd911a6a3214">DeleteAll()</a>, Table{ENTITY}.DeleteOnSubmit(ENTITY)</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#a27dc63a99c82d51ee45f9a5527b6cb85">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a71a99476eeef5d1d3f07bd911a6a3214"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IRepository&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.DeleteAll </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Marks all entities of <em>ENTITY</em>  type as deleted. Actual deletion is performed when either <a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#aa93dff7ad91ffe8fa9f9f83311c4532d">Commit()</a> method is called or this call is made inside a transaction.</p>
<dl class="section return"><dt>Returns</dt><dd>Back reference to the current repository.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#a8b9c682bc28a6fabb266c5668dc116ed">Delete(ENTITY)</a>, Table{ENTITY}.DeleteAllOnSubmit{ENTITY}(IEnumerable{ENTITY})</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#ad7c922ec156242e78816b2420ec1dd78">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a68ae11cbe04e2a53e4bb6f4b5ee23a34"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IEnumerator&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.GetEnumerator </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns enumerator to iterate through entities of <em>ENTITY</em>  type in the underlying data storage.</p>
<dl class="section return"><dt>Returns</dt><dd>Enumerator for iteration through repository's data.</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a84f48ca9aa9dd46b3b5c8f923bcc4dd6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IRepository&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Persist </td>
          <td>(</td>
          <td class="paramtype">ENTITY&#160;</td>
          <td class="paramname"><em>entity</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Persists state of specified entity in the underlying data storage. Either a new entity will be created, or a state of the already existing one will be updated when either <a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#aa93dff7ad91ffe8fa9f9f83311c4532d">Commit()</a> method is called or this call is made inside a transaction.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">entity</td><td>Entity to be added/updated.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Back reference to the current repository.</dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">ArgumentNullException</td><td>If <em>entity</em>  is a <code>null</code> reference.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>Table{ENTITY}.InsertOnSubmit(ENTITY)</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#ab9a3194c915ec8c26f0f0eecb1e790ab">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a309e9335a9406292f3ae53dee54cdc10"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IRepository&lt;ENTITY&gt; Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Refresh </td>
          <td>(</td>
          <td class="paramtype">ENTITY&#160;</td>
          <td class="paramname"><em>entity</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Restores original state of modified entity from values in the underlying data storage. Local changes, which were made to the non-persisted <em>entity</em> , will be lost.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">entity</td><td>Entity, whose state is to be restored.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Back reference to the current repository.</dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
  <table class="exception">
    <tr><td class="paramname">ArgumentNullException</td><td>If <em>entity</em>  is a <code>null</code> reference.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>System.Data.Linq.DataContext.Refresh(RefreshMode, object)</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#ad9f0a56b0e24ed3745c786ac990d10d8">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a039e9244bb54465233718d69eb797cb7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override <a class="el" href="interface_catharsis_1_1_repository_1_1_i_transaction.html">ITransaction</a> Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Transaction </td>
          <td>(</td>
          <td class="paramtype">IsolationLevel?&#160;</td>
          <td class="paramname"><em>isolation</em> = <code>null</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Wraps a set of operations over repository inside an atomic transaction, making it a single unit-of-work block.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">isolation</td><td>Transaction isolation level. If not specified, default isolation level for underlying data storage will be used.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Initialized and started transaction. When ITransaction.Dispose() method is called, transaction commit is performed.</dd></dl>

<p>Implements <a class="el" href="class_catharsis_1_1_repository_1_1_repository_base_3_01_e_n_t_i_t_y_01_4.html#a09c28b8e19623474c6793c4391b58e32">Catharsis.Repository.RepositoryBase&lt; ENTITY &gt;</a>.</p>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="acf149200e9f60b6f5bd4ec97f5354bcf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">DataContext Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.DataContext</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Allows direct access to LINQ to SQL <a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html#acf149200e9f60b6f5bd4ec97f5354bcf">DataContext</a> instance.</p>

</div>
</div>
<a class="anchor" id="ae31674813b52a562e6152d4d380fbc88"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override Type Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.ElementType</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Implementation of IQueryable{ENTITY}.ElementType property.</p>

</div>
</div>
<a class="anchor" id="a491c9a503d1461e062de945645fb7a4e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override Expression Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Expression</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Implementation of IQueryable{ENTITY}.Expression property.</p>

</div>
</div>
<a class="anchor" id="a643204cebdeb6e7bf0d4a675863975b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override IQueryProvider Catharsis.Repository.LinqToSqlRepository&lt; ENTITY &gt;.Provider</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Implementation of IQueryable{ENTITY}.Provider property.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_catharsis.html">Catharsis</a></li><li class="navelem"><a class="el" href="namespace_catharsis_1_1_repository.html">Repository</a></li><li class="navelem"><a class="el" href="class_catharsis_1_1_repository_1_1_linq_to_sql_repository_3_01_e_n_t_i_t_y_01_4.html">LinqToSqlRepository< ENTITY ></a></li>
    <li class="footer">Generated on Wed Aug 6 2014 01:07:50 for Catharsis.NET.Repository by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.7 </li>
  </ul>
</div>
</body>
</html>
